草庐IT

Java OpenSSL 验证和获取公钥

全部标签

ruby - Ruby/Rack 中的单点登录服务器身份验证

我在Windows服务器上编写和托管Web应用程序以供内部网使用。我的服务器堆栈使用Sinatra(使用Rack)、Thin和(在某些情况下)Apache仅用于反向代理。我想在我们的ActiveDirectory支持的域中支持单点登录(使用NTLM或Kerberos)。我已经看到我可以使用mod_ntlm或mod_auth_kerb当我在Apache后面执行我的NTLM身份验证时。我还没有尝试过,但我认为它会起作用。当我不支持Apache时,我的问题是关于NTLM或Kerberos身份验证,仅使用Thin和Sinatra。我看过rack-ntlm,但那里的使用细节非常稀少。请在Sina

ruby-on-rails - Rails 验证方法比较两个字段?

我的模型有两个字段,作为验证的一部分,我想将它们相互比较。我想确定end_time在start_time之后。我写了一个验证方法来比较它们,但我一定做错了什么,因为值总是零。有人可以帮忙吗?classLogEntry{:message=>"mustbeavaliddate/time"}validates:end_time,:presence=>{:message=>"mustbeavaliddate/time"}validate:start_must_be_before_end_timedefstart_must_be_before_end_timeerrors.add(:start_

ruby - 获取公共(public)(远程)IP 地址

我想知道是否有一种简单的方法可以使用Ruby获取计算机的公共(public)IP地址。 最佳答案 Akamai提供了一个“我的IP是什么”页面,您可以获取该页面:require'open-uri'remote_ip=open('http://whatismyip.akamai.com').read不过,有一些替代方案可以做同样的事情:http://whatismyip.akamai.comhttp://ipecho.net/plainhttp://icanhazip.comhttp://ident.mehttp://bot.what

ruby - 如何在命令行上获取 ruby​​ -e 的管道输入?

我正在尝试弄清楚如何在bash控制台上编写一行代码并通过管道传输到ruby​​,但我不知道如何获取输入。这不起作用:echo"MyString"|ruby-e"#{STDIN.read.first.downcase}"如何在ruby​​中获取管道输入? 最佳答案 Ruby将您的行视为注释,因为它以#开头。这会起作用:echo"MyString"|ruby-e"putsgets.downcase"输出:mystring我用过Kernel#gets而不是STDIN.gets:Returns(andassignsto$_)thenextl

ruby-on-rails - Carrierwave如何获取文件扩展名

我正在开发一个需要文件上传/下载的RubyonRails应用程序。对于上传部分,我使用了gemcarrierwave,因为它非常易于使用且灵活。问题是:一旦我上传了文件,我需要知道一些事情:即如果它是pdf而不是下载文件,我会在线显示它,图像也是如此。我如何获得文件扩展名以及如何发送文件给用户?感谢任何反馈谢谢!! 最佳答案 确定文件扩展名(我想挂载的uploader的名称是"file"):file=my_model.file.urlextension=my_model.file.file.extension.downcase然后准

ruby-on-rails - 设计在身份验证失败期间不显示错误消息?

当设计中发生身份验证失败时,我期待一个闪现通知。但是在身份验证失败期间什么也得不到,只是页面刷新并保持静止。我没有改变任何东西。默认设计安装本身不会显示带有无效身份验证尝试的闪存错误。我刚刚将devise作为gem安装并尝试使用它。甚至不要更改生成的代码中的一个字。可能我想是不是由于某些浏览器的可比性问题。但我得到其他手动引入的flash消息,其他工作。关于什么可能被破坏的任何建议。我正在使用rails3.0.1*更新*我收到用户注册(注册)失败消息,但没有收到登录失败消息。一些关于这个主题的谷歌搜索显示,对于注册它期望:-但是对于登录,它希望引用其他一些警报消息标签,但没有得到我必须

ruby 为给定值获取多个哈希键的有效方法

从给定值中获取所有哈希键的最有效方法是什么。my_hash={"a"=>"aa","b"=>"bb","c"=>"bb"}我想将散列“bb”作为输入值并将它们的所有键(b,c)作为数组返回只返回一个键:my_hash.index("bb")#returnsonlyb这有效但似乎效率低下:my_hash.select{|k,v|v=='bb'}.map{|i|i[0]}#returnsbandc我已经阅读了所有文档。我觉得我缺少了一些明显的东西。谢谢!更新:我最终切换了哈希创建的键和值,并使用数组作为值。这是一个更有效的解决方案。如果需要,请参阅下文了解进行值(value)查找的最佳方法

ruby-on-rails - 从 Fixnum 整数 Ruby on Rails 中获取每个单独的数字

这是一个真正的super新手问题。我在数据库中存储了一个年龄。当我从数据库中获取年龄时,我想获取每个单独的数字。例子:User.age=25我想得到以下信息:first=5second=2我似乎无法从数据中将其作为一个固定数字来解决。任何人都知道一个干净简单的解决方案。 最佳答案 您可以转换为字符串,然后拆分为数字,例如first,second=User.age.to_s.split('')=>["2","5"]如果您需要将单个数字作为Fixnums返回,您可以将它们映射回来,例如first,second=User.age.to_s

ruby - 从实例方法中获取 sinatra 环境

确定环境的正确方法是什么?现在我正在使用:classMain但是好像不太对。 最佳答案 我会使用Sinatra::Base.development?或Sinatra::Base.production?因为这是方法的来源。 关于ruby-从实例方法中获取sinatra环境,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/8192057/

ruby - 使用 Poltergeist 时如何获取元素的 HTML?

我正在使用带有Poltergeist驱动程序的Capybara。我的问题是:如何获取节点的HTML(字符串)?我读到过使用RackTest驱动程序你可以像这样得到它:find("table").native#=>nativeNokogirielementfind("table").native.to_html#=>"..."但是Poltergeist在节点上调用#native会返回Capybara::Poltergeist::Node,而不是原生的Nokogiri元素。然后在Capybara::Poltergeist::Node上再次调用#native再次返回相同的Capybara::